import { Controller } from 'egg';

//技术支持管理接口
export default class  TechnicalController extends Controller {
    //上传技术支持
    /**
     * @api {post} /manage/technical_upload 上传技术支持（暂未实现）
     * @apiName manageTechnicalUpload
     * @apiGroup Technical
     * @apiVersion 1.0.0
     * @apiDescription 上传技术支持
     * @apiParam {File} file  批量文件
     * @apiParam {String} technical_content  文本内容可为空
     * @apiParam {String} technical_name  名称/标题
     * @apiSuccess {Number} code 返回状态码 0失败  200成功
     * @apiSuccess {String} message 返回状态对应提示消息
     * 
     */
    async upload(){

    }
    //次序移动
    /**
     * @api {post} /manage/common_move 次序移动
     * @apiName manageCommonMove
     * @apiGroup Common
     * @apiVersion 2.0.0
     * @apiDescription 次序移动
     * @apiParam {String} key 需要移动的类型,为字符串（如：product,resource,sub,category,banner,job,news,solution等）
     * @apiParam {Number} cur_pos 当前的位置
     * @apiParam {Number} tar_pos 移动到的位置（目标位置）
     * @apiSuccess {Number} code 返回状态码 0失败  200成功
     * @apiSuccess {String} message 返回状态对应提示消息
     * 
     */
    /**
     * 上下移的通用逻辑处理
     */
    async move(){
        const {ctx}=this;
        const {body}=ctx.request;
        try {
            body.cur_pos=parseInt(body.cur_pos) ? parseInt(body.cur_pos) : null;
            body.tar_pos=parseInt(body.tar_pos) ? parseInt(body.tar_pos) : null;
            if(!body.key){
                return ctx.body=ctx.helper.error_result("必须指定需要移动类型");
            }
            return ctx.body=await ctx.service.common.sort_move(body.key,body.cur_pos,body.tar_pos);
        }catch (error) {
            
        }
        return ctx.body=ctx.helper.error_result("移动出现问题");
    }
    //同步所有的排序字段
    /**
     * 同步排序字段
     */
    async sync_sort(){
        const {ctx,app}=this;
        let tables=app.config.SYNC_SORT_TABLES
        ctx.body=await ctx.service.common.sync_sort(tables)
    }
    /**
     * 同步banner表字段
     */
    async sync_banner(){
        const {ctx,app}=this;
        try {
            let result=await app.model.query("ALTER TABLE `banner`  modify column  `banner_name` varchar(255) DEFAULT NULL;");
            ctx.body=ctx.helper.success_result("操作成功",result)
        } catch (error) {
            ctx.body=ctx.helper.error_result("查询成功");
        }
        
    }
}

